package com.ucenter.server.auth.service;

import java.util.List;

import org.springframework.stereotype.Component;

import com.system.handle.model.ResponseFrame;
import com.ucenter.server.auth.pojo.ResInfo;
import com.ucenter.server.auth.pojo.RoleInfo;
import com.ucenter.server.auth.pojo.RoleUser;

/**
 * role_user的Service
 * @author autoCode
 * @date 2018-12-01 09:50:44
 * @version V1.0.0
 */
@Component
public interface RoleUserService {
	
	/**
	 * 保存
	 * @param roleUser
	 * @return
	 */
	public ResponseFrame save(RoleUser roleUser);
	
	/**
	 * 根据userId获取对象
	 * @param userId
	 * @return
	 */
	public RoleUser get(String userId, String roleId);

	/**
	 * 分页获取对象
	 * @param roleUser
	 * @return
	 */
	public ResponseFrame pageQuery(RoleUser roleUser);
	
	/**
	 * 根据userId删除对象
	 * @param userId
	 * @param roleId 
	 * @return
	 */
	public ResponseFrame delete(String userId, String roleId);
	/**
	 * 根据用户编号获取对应的角色[返回角色的名称]
	 * @param userId
	 * @return
	 */
	public List<RoleUser> findByUserId(String userId);

	/**
	 * 获取用户在对应站点上的菜单功能
	 * @param userId
	 * @param websiteId
	 * @return
	 */
	public List<ResInfo> findResByUidWid(String userId, String websiteId);
	/**
	 * 根据用户和站点获取赋权的角色列表
	 * @param userId
	 * @param websiteId
	 * @return
	 */
	public List<RoleInfo> findRoleByUidWid(String userId, String websiteId);

	public void deleteByUserId(String userId);
}